package com.hxkj.client.service;

import com.github.pagehelper.PageInfo;
import com.hxkj.domain.po.SysUser;
import com.platform.common.domain.result.ParameterDataStruct;
import com.platform.common.domain.result.ResultDataStruct;
import com.platform.common.domain.result.ResultMessageStruct;
import org.springframework.cloud.netflix.feign.FeignClient;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import java.util.List;

@FeignClient(name = "cms-user-center")
public interface UserManagementServiceClient extends BaseClient {

    @RequestMapping(value = "/userManagement/getList", method = RequestMethod.POST, consumes = "application/json;charset=utf-8")
    PageInfo<SysUser> getList(@RequestBody ParameterDataStruct<SysUser> parameterDataStruct) throws Exception;

    @RequestMapping(value = "/userManagement/getUser", method = RequestMethod.POST, consumes = "application/json;charset=utf-8")
    ResultDataStruct<SysUser> getUser(@RequestBody SysUser sysUser) throws Exception;

    @RequestMapping(value = "/userManagement/modifyUserStatus", method = RequestMethod.POST, consumes = "application/json;charset=utf-8")
    ResultMessageStruct modifyUserStatus(@RequestBody SysUser sysUser) throws Exception;


    @RequestMapping(value = "/userManagement/selectAllUserId", method = RequestMethod.POST, consumes = "application/json;charset=utf-8")
    ResultDataStruct<List<SysUser>> selectAllUserId() throws Exception;

    @RequestMapping(value = "/userManagement/selectUserByAccount", method = RequestMethod.POST, consumes = "application/json;charset=utf-8")
    ResultDataStruct<SysUser> selectUserByAccount(@RequestBody SysUser sysUser) throws Exception;

    @RequestMapping(value = "/userManagement/modifyUser", method = RequestMethod.POST, consumes = "application/json;charset=utf-8")
    ResultMessageStruct modifyUser(@RequestBody SysUser sysUser) throws Exception;

}
